home *** CD-ROM | disk | FTP | other *** search
/ Scene 96 / Scene 96 International Edition (Zyklop Software) (Disc 1) (1997).iso / intros / 64k / revolt / sources / part3.as3 < prev    next >
Text File  |  1996-01-24  |  4KB  |  315 lines

  1.  
  2.  
  3. jumps
  4. .386p
  5. CODE32 SEGMENT PARA PUBLIC USE32
  6. ASSUME cs:CODE32, ds:CODE32
  7.  
  8.         include    design.mak
  9.  
  10.         include pmode.inc
  11.         include    timer.ext
  12.         include    rotatem.ext
  13.  
  14.         EXTRN    stal    :BYTE
  15.  
  16.         EXTRN    sound    :BYTE
  17.         PUBLIC     part3
  18.  
  19.         mode    dw    0
  20.         mama    db    0
  21.         ola    db     0
  22.  
  23. make_me_happy    PROC
  24.         lea    esi,stal
  25.         call    generate32env
  26.  
  27.         mov    zdelta,780
  28.         mov    angleX,0
  29.         mov    angleZ,0
  30.         mov    angleY,-55
  31.         mov    inc_xxx,0
  32.         mov    inc_yyy,0
  33.         mov    inc_zzz,0
  34.         mov    d_x,-50
  35.         mov    d_y,150
  36.         lea    edi,pixels
  37.         mov    adr_pixels,edi
  38.         lea    edi,faces
  39.         mov    adr_faces,edi
  40.         mov    number_p,number_of_points
  41.         mov    number_f,number_of_faces
  42.         call    calc_nor
  43.         ;    KOLORY
  44.         mov    ecx,number_of_faces/2
  45.          mov    edi,adr_colors
  46.     gg:    mov    byte ptr [edi],64
  47.         mov    byte ptr [edi+1],64
  48.         add    edi,2
  49.         loop    gg
  50.         mov    byte ptr [edi],64
  51.          ret
  52. make_me_happy    ENDP
  53.  
  54. make_me_happy2    PROC
  55.         mov    zdelta,780
  56.         mov    angleX,30
  57.         mov    angleZ,0
  58.         mov    d_y,150
  59.         mov    angleY,156
  60.         mov    inc_xxx,0
  61.         mov    inc_yyy,0
  62.         mov    inc_zzz,0
  63.         mov    d_x,360
  64.         mov    d_y,150
  65.          ret
  66. make_me_happy2    ENDP
  67.  
  68.  
  69. part3        PROC
  70.         lea    esi,pal2
  71.         call    pal_set
  72.  
  73.  
  74.         call    make_me_happy ;tumorrow
  75.         call    reset_ramki
  76.     pætla3:    
  77.  
  78.         cmp    mama,0
  79.         je    @nn2
  80.         cmp    mama,1
  81.         je    @nn1
  82.  
  83.         jmp    @nnchester
  84.  
  85.     @nn2:
  86.         mov    eax,ramki        
  87.         add     d_x,ax
  88.         shl    ax,2
  89.         sub     zdelta,eax
  90.         cmp    zdelta,150
  91.         jg    @jjj
  92.         mov    zdelta,150
  93.         mov    mama,1
  94.     @jjj:
  95.         jmp    @nnchester
  96.  
  97.     @nn1:                ; obracac w Y dod d_x obrX
  98.  
  99.         mov    eax,ramki
  100.         mov    ebx,eax    
  101.         shr    ebx,1
  102.         add    d_x,ax
  103.     add    d_x,bx
  104.         shl    eax,1
  105.         add     zdelta,eax
  106.         cmp    eax,4
  107.         jae    ja1
  108.         mov    eax,1
  109.         jmp    ja2
  110.     ja1:    shr    eax,2
  111.     ja2:
  112.         add    angleX,eax
  113.         add    angleY,eax
  114.         jmp    @nnchester
  115.  
  116.  
  117.     @nnchester: ;tu jest udziaÆ Chester
  118.  
  119.         call    reset_ramki
  120.         lea    esi,tÆo
  121.         lea    edi,screen
  122.         call    copyEkran
  123.         call    copyPoints
  124.         call    rotatety
  125.         call    _sort
  126.         call    make_lightE
  127.         call    drawFacesVcE
  128.         lea    esi,screen
  129.         call    ekran
  130.  
  131.     @ggout:
  132.         design2 500,xit2,xit
  133.     xit2:
  134.  
  135.         cmp    d_x,390
  136.         jge    xit
  137.         jmp    pætla3
  138.  
  139.     xit:
  140.         lea    esi,tÆo
  141.         call    ekran
  142.         ; teraz ruchy rolnika...
  143.         design    500h,jeb1
  144.     jeb1:    lea    esi,chlop1
  145.         call    jasiu
  146.         design    502h,jeb2
  147.     jeb2:    lea    esi,chlop2
  148.         call    jasiu
  149.         design    504h,jeb3
  150.     jeb3:    lea    esi,chlop3
  151.         call    jasiu
  152.         design    506h,jeb4
  153.     jeb4:    lea    esi,chlop1
  154.         call    jasiu
  155.         lea    esi,tÆo
  156.         lea    edi,screen
  157.         call    copyekran
  158.         call    blur
  159.         ; teraz drugi rolnik...
  160.         design    510h,je11
  161.     je11:    lea    esi,chlop1
  162.         call    jasiu
  163.         design    512h,je12
  164.     je12:    lea    esi,chlop3
  165.         call    jasiu
  166.         design    514h,je13
  167.     je13:    lea    esi,chlop2
  168.         call    jasiu
  169.         design    516h,je14
  170.     je14:    lea    esi,chlop1
  171.         call    jasiu
  172. LEA ESI,tÆo
  173. lea edi,screen
  174. call copyekran
  175. CALL BLUR
  176. @RLP ESI,0A0000H
  177. LEA EDI,tÆo
  178. CALL COPYEKRAN
  179.         lea    esi,tÆo
  180.         lea    edi,screen
  181.         call    copyekran
  182.         ; wlatujemy star-shipem...        
  183.  
  184.         call    make_me_happy2    ;parametry wlotu
  185.         mov    mama,0
  186.         call    reset_ramki
  187.         and    angleY,0ffh
  188.  
  189.     ddd:
  190.         cmp    mama,0
  191.         je    mama_zero
  192.         cmp    mama,1
  193.         je    mama_jeden
  194.         cmp    mama,2
  195.         je    mama_trzy
  196.         
  197.  
  198.         jmp    mniam
  199.  
  200.     mama_trzy:
  201.         mov    eax,ramki
  202.         
  203.         shl    eax,1 ;2        ;SHL EAX,2
  204.         sub    d_x,ax
  205.         SHR    EAX,1        ;SHr EAX,1
  206.         sub    zdelta,eax
  207.         SHR    EAX,1
  208.         SUB    ANGLEX,EAX
  209.  
  210.         cmp    zdelta,150
  211.         jge    spoko
  212.         mov    zdelta,150
  213.  
  214.     spoko:
  215.  
  216.             CMP    D_X,-125
  217.             JGE    HDH
  218.             MOV    MAMA,3
  219.  
  220.     HDH:
  221.         jmp    mniam
  222.  
  223.     mama_jeden:
  224.         mov    eax,ramki
  225.         add    angleY,eax
  226.         add     zdelta,eax
  227.         cmp    eax,4
  228.         jb    dddd
  229.         shr    eax,2
  230.         jmp    ddd2
  231.     dddd:    mov    eax,1            ;172 dla angleY
  232.     ddd2:
  233. sub d_x,ax
  234.         sub    angleX,eax
  235.         cmp    anglex,0
  236.         jge    jui
  237.         mov    angleX,0
  238.     jui:
  239.         cmp    angleY,0ffh+165-15
  240.         jle    jio
  241.         mov    mama,2
  242.     jio:        
  243.  
  244.         jmp    mniam
  245.     mama_zero:
  246.         mov    eax,ramki
  247.         sub    d_x,ax
  248.         shl    eax,2
  249.         sub    zdelta,eax
  250.         cmp    zdelta,170
  251.         jg    pik1
  252.         mov    zdelta,170
  253.         mov    mama,1
  254.     pik1:
  255.         jmp    mniam
  256.  
  257.  
  258.     mniam:
  259.  
  260.         
  261.         call    reset_ramki
  262.         lea    esi,tÆo
  263.         lea    edi,screen
  264.         call    copyEkran
  265.         call    copyPoints
  266.         call    rotatety
  267.         call    _sort
  268.         call    make_lightE
  269.         call    drawFacesVcE
  270.         lea    esi,screen
  271.         call    ekran
  272.  
  273.         design2    062dh,kwak,ddd
  274.  
  275.         jmp    ddd
  276.  
  277.     KWAK:
  278.         lea    esi,tÆo
  279.         call    ekran
  280.  
  281.  
  282.         ret
  283. part3    ENDP
  284.  
  285. jasiu:
  286.         push    esi
  287.         lea    esi,tÆo
  288.         lea    edi,screen
  289.         call    copyEkran
  290.         lea    edi,screen
  291.         pop    esi
  292.         call    rolnik
  293.         lea    esi,screen
  294.         call    ekran
  295.         ret
  296.  
  297.  
  298.             
  299.         include    chlopki\chlop.as3
  300.  
  301.     pal2:
  302.         include    part3.pal
  303.  
  304.     include hex.inc
  305.  
  306.         include objects\trek._3d
  307.         include    revolt.ext
  308.  
  309.  
  310.  
  311. CODE32 ENDS
  312. END
  313.  
  314.  
  315.